{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Домашнее задание \"Теория вероятности. Дискретные Случайные Величины\".\n",
    "\n",
    "## Уровень 0:\n",
    "\n",
    "### Задание 1:\n",
    "\n",
    "Монетку подбрасывают 15 раз, найдите вероятность выпадения простого числа орлов"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import math\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "def bernoulli_probability(p:'0=<float=<1', m:'int>=0', n:'int>=0'):\n",
    "    \"\"\"Поиск вероятности события по формуле Бернулли\n",
    "    \n",
    "    Формула Бернулли находит вероятность появления события А ровно m раз в n независимых испытаниях.\n",
    "    \n",
    "    Параметры\n",
    "    ---------\n",
    "    p : float\n",
    "      Вероятность появления события А\n",
    "    m : int\n",
    "      Число появления события A в n независимых испытаниях\n",
    "    n : int \n",
    "      Число проводимых опытов\n",
    "      \n",
    "    Результат\n",
    "    ---------\n",
    "    pa : float\n",
    "      Вероятность появления события A в n независимых испытаниях\n",
    "    \"\"\"\n",
    "    \n",
    "    if p > 1 or p < 0:\n",
    "        raise ValueError(\"Вероятность p должна быть в промежутке от 0 до 1 включительно\")\n",
    "        \n",
    "    if not isinstance(m, int) or m < 0:\n",
    "        raise ValueError(\"Количество появлений m события А должно быть целым числом и больше или равно 0\")\n",
    "        \n",
    "    if not isinstance(n, int) or m < 0:\n",
    "        raise ValueError(\"Количество испытаний n должно быть целым числом и больше или равно 0\")\n",
    "        \n",
    "    q = 1 - p\n",
    "    \n",
    "    return math.factorial(n) / (math.factorial(n-m) * math.factorial(m)) * p**m * q**(n-m)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Вероятность выпадение орла 2 раз(а), кол-во опытов 15: 0.003204345703125\n",
      "Вероятность выпадение орла 3 раз(а), кол-во опытов 15: 0.013885498046875\n",
      "Вероятность выпадение орла 5 раз(а), кол-во опытов 15: 0.091644287109375\n",
      "Вероятность выпадение орла 7 раз(а), кол-во опытов 15: 0.196380615234375\n",
      "Вероятность выпадение орла 11 раз(а), кол-во опытов 15: 0.041656494140625\n",
      "Вероятность выпадение орла 13 раз(а), кол-во опытов 15: 0.003204345703125\n"
     ]
    }
   ],
   "source": [
    "# Вероятность выпадания орла\n",
    "p = 1/2\n",
    "# Кол-во опытов\n",
    "n = 15\n",
    "\n",
    "for m in (2,3,5,7,11,13):\n",
    "    print(f'Вероятность выпадение орла {m} раз(а), кол-во опытов {n}: {bernoulli_probability(p, m, n)}')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Задание 2:\n",
    "\n",
    "Создайте свою дискретную случайную величину с не менее чем 10 значениями. Просемплируйте 1000 случайных значений, постройте гистограмму плотности распределения по выборке, посчитайте среднее, дисперсию и медиану."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Среднее значение случайной величины X в сэмпле: 438.477\n",
      "Дисперсия случайной величины X в сэмпле: 77922.997471\n",
      "СКО случайной величины X в сэмпле: 279.14691019425595\n",
      "Медиана случайной величины X в сэмпле: 413.0\n"
     ]
    }
   ],
   "source": [
    "rand = np.random.RandomState(seed=42)\n",
    "x = rand.randint(0, 1000, 50)\n",
    "sample = rand.choice(x, size=1000, replace=True)\n",
    "\n",
    "plt.hist(sample)\n",
    "plt.title('Плотность распределения значений сэмпла')\n",
    "plt.xlabel('Значение случайной величины X')\n",
    "plt.show()\n",
    "\n",
    "print('Среднее значение случайной величины X в сэмпле:', np.mean(sample))\n",
    "print('Дисперсия случайной величины X в сэмпле:', np.var(sample))\n",
    "print('СКО случайной величины X в сэмпле:', np.std(sample))\n",
    "print('Медиана случайной величины X в сэмпле:', np.median(sample))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Уровень 1:\n",
    "\n",
    "### Задание 3:\n",
    "\n",
    "Пусть брошены 3 уравновешенные монеты.\n",
    "\n",
    "Рассмотрим 3 события:\n",
    "\n",
    "A1 - монеты 1 и 2 упали одной и той же стороной;\n",
    "\n",
    "A2 - монеты 2 и 3 упали одной и той же стороной;\n",
    "\n",
    "A3 - монеты 1 и 3 упали одной и той же стороной.\n",
    "\n",
    "Покажите, почему эти 3 события (A1, A2, A3) являются попарно независимыми, но не являются независимыми в совокупности.\n",
    "\n",
    "#### Решение:\n",
    "\n",
    "Для события А количество благоприятствующих значений равно 4. Общее количество комбинаций равно $\\overline{A}^3_2 = 2^3 = 8$.\n",
    "Соответственно вероятность $P(A1) = 4/8 = 1/2$\n",
    "\n",
    "Аналогично $P(A2) = 1/2$ и $P(A3) = 1/2$\n",
    "\n",
    "Если предполагаем пересечение событий A1 и A2, то это означает, что у нас на всех монетах выпадут одинаковые стороны. Число благоприятствующих комбинаций равно 2, а общее количество комбинаций равно 8.\n",
    "\n",
    "Тогда вероятность $P(A1A2) = 2/8 = 1/4$, а $P(A1)*P(A2) = 1/2 * 1/2 = 1/4$.\n",
    "Так как $P(A1A2) = P(A1)*P(A2)$, то эта пара событий независима.\n",
    "\n",
    "Расчеты будут аналогичны для пар A1 и A3, A2 и A3. Отсюда следует, что события A1, A2 и A3 попарно независимы.\n",
    "\n",
    "Если предполагаем пересечение событий A1, A2 и A3, то точно так же это означает выпадение одной стороны на всех монетах.\n",
    "\n",
    "Тогда $P(A1A2A3) = 2/8 = 1/4$, а $P(A1)*P(A2)*P(A3) = 1/2 * 1/2 * 1/2 = 1/8$.\n",
    "\n",
    "Так как $P(A1A2A3) \\neq P(A1)*P(A2)*P(A3)$, то делаем вывод о зависимости в совокупности событий A1, A2 и A3,"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Задание 4 (формула полной вероятности):\n",
    "\n",
    "В магазин привезли устройства с 3-х разных предприятий.\n",
    "\n",
    "Соотношение устройств следующее: 20% - продукция первого предприятия, 30% - продукция второго предприятия, 50% - продукция третьего предприятия; далее, 10% продукции первого предприятия высшего сорта, на втором предприятии - 5% и на третьем - 20% продукции высшего сорта.\n",
    "\n",
    "Найти вероятность того, что случайно купленная новая продукция окажется высшего сорта.\n",
    "\n",
    "H1 - Продукция из первого предприятия\n",
    "\n",
    "H2 - Продукция из второго предприятия\n",
    "\n",
    "H3 - Продукция из третьего предприятия"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Вероятность того, что случайно купленная новая продукция окажется высшего сорта: 0.135\n"
     ]
    }
   ],
   "source": [
    "# Вероятность поступления продукции с первого завода\n",
    "p_h1 = 0.2\n",
    "# Вероятность поступления продукции со второго завода\n",
    "p_h2 = 0.3\n",
    "# Вероятность поступления продукции с третьего завода\n",
    "p_h3 = 0.5\n",
    "\n",
    "assert p_h1 + p_h2 + p_h3 == 1, \"Сумма гипотез не равна 1\"\n",
    "\n",
    "# Вероятность получения качественной продукции, если она пришла с первого завода\n",
    "p_h1_a = 0.1\n",
    "# Вероятность получения качественной продукции, если она пришла со второго завода\n",
    "p_h2_a = 0.05\n",
    "# Вероятность получения качественной продукции, если она пришла с третьего завода\n",
    "p_h3_a = 0.2\n",
    "\n",
    "p_a = p_h1*p_h1_a + p_h2*p_h2_a + p_h3*p_h3_a\n",
    "print(\"Вероятность того, что случайно купленная новая продукция окажется высшего сорта:\", p_a)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.8"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
